home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Precision Software Appli…tions Silver Collection 1
/
Precision Software Applications Silver Collection Volume One (PSM) (1993).iso
/
games
/
egavga
/
pcrobots.arj
/
WHATS.NEW
< prev
next >
Wrap
Text File
|
1992-11-01
|
4KB
|
115 lines
What's new in V1.3
===================
Ctrl-C no longer causes a crash - it is ignored totally.
Exiting by pressing ESC returns an error level of 200 (why not? :-) )
Errorlevel values are:
-1 - ERROR
0-n - Winning Robot
100 - Draw (>=2 left alive)
101 - Draw (0 left alive)
200 - Esc pressed
First attempt to cure the 'display.sys' bug.
A 'superfast' version is available. This is a separate program
and has no output at all, until the results phase.
A '-r' option is supplied, this lets you set the random number
seed to allow identical runs to be made (the normal seed
generator has been made more 'random' as well).
A 'get_robot_id' function is supplied to provide the current
robot's ID number.
The configure function now returns the PCRobots version number in
AX (the C and Pascal library functions have been modified to
cause the robot to exit if the program is run outside PCRobots).
An IFF system is now operational.
A facility to identify robots by name is present now.
Shells now pass through damaging/slow/refueling squares (they
were originally supposed to do).
There is now a timeout. A robot has got a time limit on what it
can do between moves. On a 33MHz 386 this is typically 3 seconds,
but the time should varied to suit the computer. (the main reason
for this is to prevent robots getting stuck in loops with no way
out - I can increase the time limit if necessary).
Ctrl-Break will now kill all robots, even ones stuck in loops
(note, this *kills* all robots, so it's not the same as ESC).
There is a lot more security in the system now. Robots are
prevented from doing a lot of DOS functions. If you ever get a
'robot killed by system - violation xxxx' message, this is what's
happened. If you didn't specifically do anything risky, let me
know and I'll consider allowing that function. All the robots
I've been able to test have been OK with the current
restrictions. See the full documentation for a table of allowable
function calls.
DOS Memory allocation is now carried out by PCRobots rather than
by DOS. This is to enforce the 64k limit on robot space (needed
for EMS usage). Currently only the 'set block size' function is
implemented as this is the only one which is used internally by
most compilers. Other memory allocation functions are illegal so
far. You should now be able to use 'malloc' and 'free' freely
inside C programs.
A 'postmortem' display is given when the game is over, this tells
you why a robot was killed or which robot killed it.
The '-v' option gives a verbose output for each robot listing a
lot of the final details (these will also be copied to the log if
a log file is being produced).
The int 0e0h vector is constantly checked for tampering and a
guilty robot is killed.
The settings for int 34 -> int 3f are kept for each robot. This
may allow floating point numbers to be used directly by robots
(I'll have to check first though).
The file type (COM or EXE) is now determined from the header
rather than the file extension.
EXE files are checked for a valid stack.
EMS is now supported - you need a driver capable of supporting
LIM EMS V4.0 or later (eg QEMM386 and EMM386 are suitable). This
means that you can now have up to 20 robots at once!
Robot teams are supported (see the doc file).
The -f command line parameter has a default filename now
(pcrobots.log).
What's new in V1.2
===================
The robot positioning bug has been fixed.
The '-a' parameter is allowed to support arena files of different
names.
DOS interrupts are intercepted to deal with two DOS functions (at
present). These are 'file read' and 'file write'. File read is
totally disallowed (this is to prevent certain forms of
cheating).
File write is intercepted to capture writes to stdout. This output
can be displayed in a 'supported' way now. See the doc file for
details.
An errorlevel value is given when pcrobots finishes. This is '-1'
if no robot won, or the program couldn't complete for some reason.
Otherwise the value identifies the winning robot.
I've included PCROBOT6.PAS which is an alternative unit for TP V6.0
What's new in V1.1
===================
An anomoly with the memory allocation strategy for programs was causing
trouble with Zortech C compilers. This has been corrected.